docs: update vtd.txt for pv-ops dom0
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 7 Jul 2009 13:07:08 +0000 (14:07 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 7 Jul 2009 13:07:08 +0000 (14:07 +0100)
Now VT-d works with pv-ops dom0, update vtd.txt to tell how to build
and use VT-d with pv-ops.

Signed-off-by: Weidong Han <weidong.han@intel.com>=
docs/misc/vtd.txt

index 5f90b640c3109db634b990c3ac2d780de643843e..72a7820f3225f9f3e3a0bb94e9bea40574388a11 100644 (file)
@@ -3,11 +3,12 @@ Authors : Allen Kay    <allen.m.kay@intel.com>
           Weidong Han  <weidong.han@intel.com>
           Yuji Shimada <shimada-yxb@necst.nec.co.jp>
 Created : October-24-2007
-Updated : September-09-2008
+Updated : July-07-2009
 
 How to turn on VT-d in Xen
 --------------------------
 
+Xen with 2.6.18 dom0:
 1 ) cd xen-unstable.hg
 2 ) make install
 3 ) make linux-2.6-xen-config CONFIGMODE=menuconfig
@@ -44,6 +45,44 @@ title Xen-Fedora Core (2.6.18-xen)
     "ifconfig" to see if IP address has been assigned to NIC devices.
 
 
+Xen with pv-ops dom0:
+1 ) cd xen-unstable.hg
+2 ) make install
+3 ) make linux-2.6-pvops-config CONFIGMODE=menuconfig
+4 ) change Bus options (PCI etc.)->"PCI Stub driver" to "*".
+5 ) make linux-2.6-pvops-build
+6 ) make linux-2.6-pvops-install
+7 ) mkinitrd -v -f --with=ahci --with=aacraid --with=sd_mod --with=scsi_mod initrd-2.6.30-rc3-tip.img 2.6.30-rc3-tip
+    (change 2.6.30-rc3-tip to pv-ops dom0 version when it's updated in future)
+8 ) cp initrd-2.6.30-rc3-tip.img /boot
+9 ) edit grub:
+
+title Xen-Fedora Core (pv-ops)
+        root (hd0,0)
+        kernel /boot/xen.gz console=com1,vga console=com1 com1=115200,8n1 iommu=1
+        module /boot/vmlinuz-2.6.30-rc3-tip root=LABEL=/ ro console=hvc0 earlyprintk=xen
+        module /boot/initrd-2.6.30-rc3-tip.img
+
+10) reboot system
+11) hide device using pci-stub (example PCI device 01:00.0):
+
+    - lspci -n
+    - locate the entry for device 01:00.0 and note down the vendor & device ID
+8086:10b9
+        ...
+        01:00.0 0200: 8086:10b9 (rev 06)
+        ...
+    - then use following commands to hide it:
+        echo "8086 10b9" > /sys/bus/pci/drivers/pci-stub/new_id
+        echo "0000:01:00.0" > /sys/bus/pci/devices/0000:01:00.0/driver/unbind
+        echo "0000:01:00.0" > /sys/bus/pci/drivers/pci-stub/bind
+
+12) add "pci" line in /etc/xen/hvm.conf for to assigned devices
+        pci = [ '01:00.0' ]
+13) start hvm guest and use "lspci" to see the passthru device and
+    "ifconfig" to see if IP address has been assigned to NIC devices.
+
+
 Enable MSI/MSI-x for assigned devices
 -------------------------------------
 Add "msi=1" option in kernel line of host grub.
@@ -245,7 +284,7 @@ using it in VT-d environment. You need to hide the Virtual Function,
 use the Virtual Function bus, device and function number in the HVM
 guest configuration file and then boot the HVM guest. You also need the
 Virtual Function driver which is the normal PCI device driver in the
-HMV guest to drive the Virtual Function. The PCIe SR-IOV specification
+HVM guest to drive the Virtual Function. The PCIe SR-IOV specification
 requires that the Virtual Function can only support MSI/MSI-x if it
 uses interrupt. This means you also need to enable Xen/MSI support.
 Since the Virtual Function is dynamically allocated by Physical Function